In financial markets, electronic trading is a mode of trading that uses information technology to bring together a buyer and a seller through technology in order to create a virtual marketplace. Many investment firms on both the buy and sell side are increasing their investment in systems and technology for electronic trading. Traders are increasingly relying on algorithms to analyze market conditions and execute orders.
Algorithmic trading involves the use of computer programs for entering trading orders. The computer programs may be written to make decisions regarding trading orders including timing, price, and quantity decisions.
Participants in electronic financial markets typically include hedge funds, pension funds, mutual funds and other institutional traders. Through electronic financial markets, these traders are able to make decisions to initiate orders based on electronically received information that in some instances may be available electronically before it is available to human traders. Furthermore, algorithmic trading facilitates division of large trades into multiple smaller trades in order to manage cost and risk.
Using algorithmic trading, large traders may split orders to execute each order or category of orders at a better average price. These average price benchmarks may be measured and calculated through the use of one or more of many available algorithms, for example, through the use of algorithms calculating a time weighted average price (TWAP) or volume weighted average price (VWAP).
The trading systems used by traders for algorithmic trading are often referred to as Execution Management Systems (EMS) or Order Management Systems (OMS). Either of these types of systems may be capable of connecting with multiple algorithmic providers in order to allow access to a large set of algorithms and may be used for electronic trading of equities, futures, options, and FX.
Traders may find algorithms and other tools offered by different brokers that are useful for specific situations in accordance with objectives of portfolio managers. Objectives may include making a predetermined purchase, minimizing timing risk, minimizing market risk, a combination of these objectives, or other objectives. Traders, in order to accomplish pre-defined objectives, aim to construct sequences of these available algorithms and/or other tools.
In order to accommodate the needs of traders, various companies, such as Flextrade™ and Portware™ offer packages that enable traders to have access to multiple algorithms and to build their own algorithms. Similarly, Progressive Software offers Apama™, which is an event processing system outside of the financial realm that operates in a manner similar to Portware™. However, the packages provided by these companies require staffing of programmers in order to create and customize the algorithms. The programmers must interact with traders in order to determine the required level of customization and the traders can use the tools provided through these packages only after the traders' needs are addressed by the programmers.
An additional difficulty with existing algorithmic trading systems is that the research and development costs to construct complex algorithmic order types and distribute them are often substantial. Multiple tasks are necessary for maintaining algorithmic systems. These systems require new coding sequences for each new order strategy. Buyers and sellers may want to switch algorithms based on market conditions, time, price, or other criteria. Furthermore, traders may develop their own algorithms that require coding for implementation. Over time, as a result of changing market conditions, traders may want to alter algorithmic parameters in order to revise their trading strategies. Thus, the cost of developing and maintaining algorithms may be high, especially for new entrants.
A solution is needed that simplifies customization of algorithmic trading strategies in order to allow traders to collect and modify algorithms from multiple brokers. Additionally, a solution is needed that allows traders to configure their own customized algorithms without the assistance of programmers.